home *** CD-ROM | disk | FTP | other *** search
/ ftp.cs.arizona.edu / ftp.cs.arizona.edu.tar / ftp.cs.arizona.edu / icon / newsgrp / group94b.txt / 000045_icon-group-sender _Mon Sep 5 19:49:16 1994.msg < prev    next >
Internet Message Format  |  1995-02-09  |  4KB

  1. Received: by cheltenham.cs.arizona.edu; Mon, 5 Sep 1994 17:54:03 MST
  2. To: icon-group-l@cs.arizona.edu
  3. Date: 5 Sep 1994 19:49:16 -0400
  4. From: nmw@ios.com (Nick Williams)
  5. Message-Id: <34gaps$ste@ios.com>
  6. Organization: Internet Online Services
  7. Sender: icon-group-request@cs.arizona.edu
  8. References: <1994Aug31.140111.22639@midway.uchicago.edu>, <347vun$qkb@ios.com>, <1994Sep4.220207.10360@midway.uchicago.edu>
  9. Subject: Re: Icon - still alive??
  10. Errors-To: icon-group-errors@cs.arizona.edu
  11.  
  12. In article <1994Sep4.220207.10360@midway.uchicago.edu>,
  13. Richard L. Goerwitz <goer@midway.uchicago.edu> wrote:
  14. >In article <347vun$qkb@ios.com> nmw@ios.com (Nick Williams) writes:
  15.  
  16. >>What was Icon intended for then?
  17.  
  18. >Your opinion is a valid one, and shared by others.  I just don't happen
  19. >to agree.  We are going in circles here, in a sense, because my answer
  20. >to what you are saying now is the same answer I gave before:  If you need
  21. >system-dependent features, improve Icon's access to facilities that deal
  22. >with them.  To extend Icon here and there to make it more PERL-like or
  23. >more C-like will fritter away the language.
  24.  
  25. I didn't say that Icon itself should be extended, just that system
  26. specific stuff should be put into libraries. I can add them myself
  27. (through loadfunc() if you wish), but such system specific function
  28. libraries should be standard IMHO. It would just make Icon that much
  29. more useful; if people were then to use it in ways you deplore, so what?
  30.  
  31. >  No recompilation
  32. >of the Icon source is needed.  I like this.  There are even some exam-
  33. >ples in the new documentation for Icon 9.0.
  34.  
  35. It's nice yes (though recompilation is necessary on systems that do not
  36. support dynamic loading). Note that the C-Icon calling interface has
  37. been removed (you can call C from Icon, but not Icon from C).
  38.  
  39. >  In theory it is
  40. >nice to have a language be all things to all people.  But once a lang-
  41. >uage comits to this philosophy, it's hard to know when to stop.  And the
  42. >result can be ugly and messy.
  43.  
  44. True, and Ada is a perfect example, but as someone else pointed out Icon
  45. would be very well suited for developing a WWW browser; but of course,
  46. the lack of a standard interface to system specific stuff complicates
  47. matters. I can develop my sys specific library, so can you, but a
  48. standard would be best. You're limiting Icon's potential! :)
  49.  
  50. >Here's a prime example.  Creation of a new process in Unix is not atomic.
  51. >You have to copy the current process, then overlay it.  This is pretty
  52. >system dependent.
  53.  
  54. Not! fork() does not necessarily involve copying, particularly if you
  55. exec() soon after the fork(). Every Unix system works like this, and
  56. others are similar. Just because these are so system specific doesn't
  57. mean you can't use them, just that you should be careful about using
  58. them when you intend to write portable code (portable to non-Unix like
  59. systems that is).
  60.  
  61. >  You mentioned setenv() above.  I don't believe that
  62. >the Mac has environment variables per se.  Getenv() is marginally useful
  63. >for passing information about the environment to Icon (e.g. if you want
  64. >to know what TERM type you have under Unix).
  65.  
  66. >  But then I
  67. >could see how almost every platform-specific facility might be useful
  68. >at one time or another.  That doesn't mean I want to see them as part
  69. >of the core Icon language definition.
  70.  
  71. Ah, but you see, sometimes there's no portable way to do a certain task,
  72. a small part of a large project for which Icon is well suited; are we to
  73. forget about using Icon then, just because one procedure needs to use
  74. setenv() or fork(), or exec() or...?
  75.  
  76. >To back off a moment, let me just repeat that your opinion is perfectly
  77. >reasonable, and I'm sure many others share it.  There's another side,
  78. >though, and that's the one I happen to be on.
  79.  
  80. I just don't see what is wrong with standardizing an Icon library of
  81. system specific functions. If standard would be welcome I would
  82. volunteer time to write/implement it.
  83.  
  84. >-- 
  85. >
  86. >   -Richard L. Goerwitz              goer%midway@uchicago.bitnet
  87. >   goer@midway.uchicago.edu          rutgers!oddjob!ellis!goer
  88.  
  89. Nick
  90.